package utils;

abstract class AbstractLineClass {
    /**
     * 尺寸
     */
    private int size;

    public AbstractLineClass(int size) {
        this.size = size;
    }

    /**
     * 检查位置是否合法
     *
     * @param site 序号
     * @return 是否合法
     */
    protected boolean checkSite(int site) {
        return site >= 0 && site < size;
    }

    /**
     * 设置尺寸
     *
     * @param size 尺寸
     */
    public void setSize(int size) {
        this.size = size;
    }

    /**
     * @return 尺寸
     */
    public int getSize() {
        return size;
    }

    /**
     * 尺寸加1
     */
    protected void addSize() {
        size++;
    }

    /**
     * 尺寸减1
     */
    protected void subtractionSize() {
        size--;
    }
}
